Мотивация для создания маркван-разметки
У меня был знакомый писатель. Он заказал сайт на котором размещал свои произведения. Сайт был на CMS, которая требовала обновлений, нужно было платить за хостинг и доменное имя. А потом человек умер... и его родственники ещё какое-то время поддерживали сайт.
Другой пример, вот я пишу разные статьи в документах гугла, потом копирую их на свой сайт (где есть cms с визуальным редактором, преобразующим в html, причём не всегда корректно). И передо мной встает вопрос, а что, если моя CMS окончательно устареет, что будет с моими материалами, сколько усилий потребуется от меня, чтобы их перенести результат моего труда на новый движок?
Я считаю, что в этом мире всё должно было быть гораздо дешевле, проще и долговечнее. У нас должен быть простой способ сохранения знаний. Казалось-бы тексты занимают какие-то килобайты, но мы привыкли потреблять знания в виде html на сложных сайтах с CMS, которые занимают уже больше места, чем сама информация и сайты необходимо поддерживать. К тому же эти программы недолговечны и имеют проблемы с безопасностью.
Вообще наблюдается некоторый нонсенс — с одной стороны бесплатные терабайты тупейшего видео, а с другой, исчезает то простое, что может быть полезно. Ещё проблема в редакторах, кто-то использует документы гугла, кто-то опен-офис, кто-то ещё что-либо иное, и все они работают по разному и навязывают свою эстетику текстам и свой мусор. Я подумал а почему бы не сделать самую простую разметку, которая мало бы зависела от времени, но которую легко можно было-бы преобразовать в том виде, который требуется. И именно потребитель будет решать как будет выглядеть нужная ему информация. Да, я знал о markdown, но его ограниченные возможности меня не устраивали.
Слово markvan сложилось от vanguard markup, авангардное решение в разметке. По русски маркван.
Коротко о маркван-разметке
Язык разметки текстов markvan позволяет достаточно простым способом создавать произведения различной сложности в обычных текстовых редакторах, задавая ему требуемую структуру, позволяющую удобно воспринимать текст в исходном виде и конвертировать его в другие форматы.
Также маркван позаботился о структурировании не отдельных текстов, а связанных групп, которые можно превратить в учебники или сайты.
В результате работы получилась разметка:
- Логичная. Разметку легко запомнить, если вникнуть, потому, что она имеет некую "красоту" основанную на логике.
- Ненавязчивая. Разметка максимально проста и не мешает восприятию текста.
- Интуитивная. Размеченный текст можно прочитать и понять без предварительного долгого изучения языка разметки.
- Удобная. Автору произведения несложно вводить символы разметки.
- Однозначная. Правила разметки чётко можно интерпретировать, потому, что они нацелены не на оформление, а на передачу структуры.
- Мощная. Разметка обеспечивает достаточное количество конструкций для создания художественных и научных произведений.
- Нейтральная. Удалось минимизировать английский, который присутствует только в некоторых классах.
- Расширяемая. Синтаксис позволяет легко расширить возможности языка разметки без затрагивания уже внедренных элементов.
Куда это перенести? UTF-8 encoding UNIX-style line endings
История
Начал работу над проектом ~ 24 декабря 2022 года 08.01.2023 более менее сложилась общая картинка. Ещё некоторое время производились наброски ПО для конвертации в html
Почти год не касался проекта, к концу декабря 2023 вернулся. Был изменен подход к заголовкам (надчёркивание вместо подчёркивания), а остальное не притерпело значительных изменений. В январе 2024 почти полностью переписаны html-конвертеры. Готовность стандарта около 80 процентов, можно кому-нибудь показывать, чтобы получить обратную связь и делать доработки.
Планы на будущее
Чтобы исполнить эти планы нужны те, кому маркван нужен в прикладных задачах и специалисты понимающие пользу этого проекта, которые помогут доработать ПО.
Доработка стандарта
Обсуждение и оптимизация разметки
Практическое использования в различных ситуациях. Доработка стандарта и ПО.
Разработка ПО
- Доработать MarkvanToHTML-converter и Markvan-site creator. Сделать версии программ для скачивания на компьютер.
- Доделать сайт
- Сделать плагин подсветки маркван-разметки для файлов .text, например, для VS Code.
- Создать онлайн-сервис для писателей художественной и научной литературы.
- Сделать экспорт в другие форматы, например, для электронных книг fb2.
- Сделать обратный конвертер, например, из html в маркван.
Доработки Маркван-конвертера
- Сделать отдельное включение для вставки html без преобразования, например для демо-страницы, чтобы не портился пример кода на стр. конвертации в html
- Конвертирование таблиц
Доработка сайта
- Первый проход по текстам
- Разместить на домен
- Стили для мобильника
- Разобраться с проблемой pyscript https://ru.stackoverflow.com/questions/1560267/%D0%9F%D1%80%D0%B8-%D0%B8%D1%81%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B8-pyscript-%D0%BD%D0%B5-%D1%83%D0%B4%D0%B0%D1%91%D1%82%D1%81%D1%8F-%D0%BF%D0%BE%D0%B4%D0%BA%D0%BB%D1%8E%D1%87%D0%B8%D1%82%D1%8C-%D0%BA%D0%BE%D0%B4-%D0%B8%D0%B7-%D0%BE%D1%82%D0%B4%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B3%D0%BE-%D0%BF%D0%B8%D1%82%D0%BE%D0%BD-%D1%84%D0%B0%D0%B9%D0%BB%D0%B0
- Дополнительный рефакторинг текстов.
- Переключение тёмной темы в зависимости от настроек компа, времени суток или вручную.
- Подключение подсветки кода
- Подключение преобразователя формул
- Версия для печати!
Идеи для текстового редактора - подсвечивать клавы на полоске скролла (или рядом) и там же закладки и место до куда дочитал зеленым фоном
А ещё идея стразу делать больше межстрочные расстояния, а переносимые из-за длины слова меньше.
Вёрстка
Эпиграф сделать
Проверить описания всех включений
poem
piece — постановка
screenplay — сценарий
‹…› обернуть в тег и центрировать
Похожие решения
Markdown — язык текстовой разметки, созданный писателем и блогером Джоном Грубером. Он предназначен для создания красиво оформленных текстов в обычных файлах формата TXT.
https://www.markdownguide.org/
Недостаток: недостаточный инструментарий и возможны совпадения элементов разметки с контентом.
MultiMarkdown или MMD — это расширенный набор синтаксиса Markdown , первоначально созданный Джоном Грубером. Он добавляет множество синтаксических функций (таблицы, сноски и цитаты, и это лишь некоторые из них) в дополнение к различным форматам вывода, перечисленным выше (Markdown создает только HTML). Кроме того, он создает «умную» типографику для разных языков (например, правильные левые и правые кавычки).
https://fletcherpenney.net/multimarkdown/
Генераторы статических сайтов https://jamstack.org/generators/
Контакты
Предложения по развитию маркван-разметки или найденные недочёты или вопросы по работе программ присылайте на почту: ivan@klut.ru
или давайте обсудим в телеграмм-группе https://t.me/markvangroup